package com.cheboohui.iqs.deal;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.web.servlet.ModelAndView;

import com.alibaba.fastjson.JSONObject;
import com.cheboohui.iqs.config.Config;
import com.cheboohui.iqs.config.PrivateTool;

/**
 * 前端页面处理接口
 * 
 * @author xielonghai
 *
 */
public class FrontDeal {
	/**
	 * logger:日志工具.
	 */
	private static Log log = LogFactory.getLog(FrontDeal.class);

	/**
	 * 页面处理方法
	 * 
	 * @param request
	 * @param response
	 * @param type
	 * @return
	 */
	public static ModelAndView getFront(HttpServletRequest request, HttpServletResponse response, String type) {
		log.info("进入" + Config.value + ",获取页面接口....");
		try {
			JSONObject param = PrivateTool.paramtenToJson(request.getParameterMap());
			if (null == param)
				return errorFront("请求参数获取转化异常");
			log.info(Config.value + ",获取页面接口请求参数:" + param);

			if ("pay".equals(type)) {// pay是固定必须实现的
				log.info("前端支付成功转调页面....");
				// 前端支付成功转调页面
				return errorFront("前端支付成功转调页面-页面未启用");
			} else if ("transfer".equals(type)) {
				log.info("支付转接页面....");
				// 支付转接页面
				return errorFront("支付转接页面-页面未启用");
			} else if ("test".equals(type)) {
				log.info("测试转接页面....");
				return errorFront("测试转接页面-页面未启用");
			} else {
				log.error("请求类型错误，请后台指定页面....");
				return errorFront("请求类型错误，请后台指定页面");
			}

		} catch (Exception e) {
			log.error(Config.value + ",页面获取实现异常:" + e);
			return errorFront(e.getMessage());
		}
	}

	/**
	 * 错误页面
	 * 
	 * @param error
	 * @return
	 */
	private static ModelAndView errorFront(String error) {
		ModelAndView view = new ModelAndView("err");
		view.addObject("error", error);// 错误信息
		return view;
	}
}
